home *** CD-ROM | disk | FTP | other *** search
/ Aminet 4 / Aminet 4 - November 1994.iso / aminet / util / boot / addmem301.lha / AddMem / Docs / deutsch / AddMem.dok next >
Text File  |  1994-08-30  |  9KB  |  178 lines

  1.  
  2.  
  3.                                 AddMem
  4.  
  5.                  Version 3.01 geschrieben am 29.8.1994
  6.                         von Martin Schlodder
  7.  
  8.  Dies ist die Version 3.01 des Programms AddMem, ein Bugfix der Version 3.0.
  9.  
  10. Dieses Programm  läuft  nur  unter  OS 2.0 und neueren Versionen des Betriebs-
  11. systems.  Es  bietet  das typische  Verhalten eines  CLI Kommandos  durch Ver-
  12. wendung von  ReadArgs().  Wenn es unter  OS 2.1  oder neueren Betriebssystems-
  13. versionen gestartet wird,  und wenn man den entsprechenden  Catalog verwendet,
  14. gibt AddMem  sämtliche  Meldungen in  der Landessprache aus.  Die Installation
  15. ist sehr schnell gemacht:  Man kopiere das Programm  AddMem in ein Verzeichnis
  16. im Suchpfad der Shell,  am besten "SYS:C", und die passende Catalog-Datei nach
  17. "LOCALE:Catalogs/<Sprache>"  (zur Zeit ist nur der deutsche Catalog vorhanden,
  18. ohne Catalog ist AddMem englisch).  Die Dokumentation wird man wohl nur selten
  19. benötigt werden,  da im Programm  selbst ein umfangreicher Hilfstext eingebaut
  20. ist (Aufruf ohne Argumente).
  21.  
  22. ------------------------------------------------------------------------------
  23.  
  24. AddMem bindet,  wie  der  Name  schon  sagt,  Speicherbereiche  in die System-
  25. Speicherliste  ein,  die  nicht  autokonfigurierend  sind.  Dabei  werden  die
  26. nötigen Flags nach Möglichkeit automatisch  richtig gesetzt.  Falls dies nicht
  27. erwünscht ist, kann man mit den Argumenten die Flags überschreiben. Die Start-
  28. und Endadressen werden auf  ihre  Gültigkeit überprüft (bestimmte Bereiche des
  29. Adressraumes das Amiga sind reserviert) und der durch sie festgelegte Speicher
  30. wird auf sein  Vorhandensein  geprüft  (dabei werden resetfeste RAM-Disks o.ä.
  31. nicht zerstört).  Auf  Wunsch  kann  auch ein echter Speichertest durchgeführt
  32. werden,  der  den  Speicher  bitweise  überprüft  und deshalb auch recht lange
  33. braucht (etwa 1 Minute pro MByte). Vorrausetzung zum Betrieb ist KickStart 2.0
  34. oder höher und natürlich ein nicht autokonfigurierender Speicher.
  35.  
  36.  
  37.  Aufruf: AddMem Startadresse Endadresse [CheckMem] [A1000Fast] [32Bit]
  38.                 [LOCAL] [!PUBLIC] [CHIP] [FAST] [!24BITDMA]
  39.                 [Priorität] [RESIDENT]
  40.  
  41.  StartAdresse, EndAdresse:
  42.     Start- und Endadresse des Speicherbereichs als hexadezimale Zahlen.  Beide
  43.     müssen ein  Vielfaches  von  acht sein.  Die  hexadezimalen  Zahlen können
  44.     mit einem Dollarzeichen '$' beginnen.  Die  Endadresse  kann wahlweise das
  45.     erste Byte nach dem eingebundenen  Speicher angeben oder das letzte einge-
  46.     bundene Byte (z.B. $200000 bis $3fffff oder $200000 bis $400000).
  47.  CheckMem:
  48.     Speicher wird vor dem Einbinden überprüft.
  49.  A1000Fast:
  50.     Der Speicher wird mit den Flags PUBLIC|FAST|LOCAL|24BITDMA und der Priori-
  51.     tät 0 eingebunden, wenn er zwischen $200000 und $A00000 liegt.
  52.  32Bit:
  53.     Der Speicher wird mit den Flags  PUBLIC|FAST  und je nach Position (unter-
  54.     oder oberhalb $1000000) als 24BITDMA-fähig mit einer Priorität von +5 ein-
  55.     gebunden.
  56.  LOCAL:
  57.     Zu setzen,  wenn der Speicher direkt mit dem Prozessor verbunden ist, also
  58.     nicht auf einer Zorro-Karte untergebracht ist.
  59.  !PUBLIC, CHIP, FAST, !24BITDMA:
  60.     Zu ändernde Attribute für den  Speicher.  Selten benötigt,  da sie für die
  61.     meisten Fälle automatisch richtig gesetzt werden.
  62.  Priorität:
  63.      Priorität des einzubindenden Speichers. Wird sie weggelassen, ist sie 0.
  64.  RESIDENT:
  65.      AddMem Routine wird in  Boot-Prozess eingebunden.  Sie kann durch drücken
  66.      der linken Maustaste während eines  Reboots wieder entfernt werden,  oder
  67.      durch einen Neustart des  Rechners  (logisch) oder durch einen Reboot mit
  68.      gleichzigem Löschen der ExecBase, wie es zum Beispiel mein Programm Reset
  69.      kann. Die Routine untersucht,  ob Speicher doppelt eingebunden wird,  und
  70.      löscht in diesem Fall sämtliche Programme, die den CoolCapture verwenden,
  71.      also auch alle resetfesten AddMem-Routinen. Es können natürlich auch meh-
  72.      rere Speicherbereich RESIDENT eingebunden werden.
  73.  
  74.  
  75. Unter KickStart 1.3 gab es folgende Speicherflags:
  76.  
  77.  - PUBLIC     Wurde praktisch immer gesetzt, hatte also keine Bedeutung. Heute
  78.               wird es von  Virtual-Memory-Managern als  Unterscheidungsmerkmal
  79.               dafür benutzt, ob der Speicher ausgelagert werden darf.  Bei neu
  80.               eingebundenem Speicher immer gesetzt.
  81.  - CHIP       CHIP-Memory ist Speicher, auf den die Customchips des Amiga (die
  82.               Chips, die für Grafik, Sound usw. verantwortlich sind) zugreifen
  83.               können.  Er  belegte  ursprünglich  die untersten  512 KByte des
  84.               Adressraumes das Amiga, dann 1 MByte und schliesslich 2 MBytes.
  85.  - FAST       FAST-Memory ist jeder  Speicher,  der nicht CHIP-Memory ist.  Er
  86.               heißt so,  weil der Prozessor auf (fast jedes) FAST-Memory einen
  87.               schnelleren Zugriff als auf das CHIP-Memory hat,  da er dort von
  88.               Customchips gebremst wird. Die einzige Ausnahme von dieser Regel
  89.               ist das beim Amiga 500 und Amiga 2000A vorhandene Ranger-Memory,
  90.               auf das die Customchips zwar keinen Zugriff haben,  aber dennoch
  91.               den Prozessor bremsen.
  92.  
  93. Unter OS 2.0 kamen folgende Flags hinzu:
  94.  
  95.  - LOCAL      Dies ist Speicher, zu dem der Prozessor direkten Zugang hat, der
  96.               also nicht über den  Zorro-Bus  mit dem Prozessor verbunden ist.
  97.               Dieser Speicher steht dem  System auch nach dem Prozessor-Befehl
  98.               RESET zur Verfügung, Speicher auf Zorro-Karten sind dann im all-
  99.               gemeinen nicht mehr zugänglich.
  100.  - 24BITDMA   Speicher,  der für  Zorro-II Karten zugänglich ist,  der also im
  101.               Adressraum des MC68000 liegt (maximal 16 MBytes, höchste Adresse
  102.               $FFFFFF), wird mit diesem Flag eingebunden.
  103.  
  104. Dieses Flag ist neu seit OS 3.0:
  105.  
  106.  - KICK       Speicher, der vor der Abarbeitung der KickTags eingebunden wird,
  107.               erhält dieses Flag.  Das bedeutet,  daß in diesem Speicher Kick-
  108.               Tags liegen dürfen.
  109.  
  110.  
  111. AddMem verwendet all diese Flags.  PUBLIC wird für jeden Speicher gesetzt, so-
  112. lange nicht das Argument !PUBLIC angegeben wurde.  CHIP wird gesetzt, wenn der
  113. Speicher unterhalb von $200000 liegt (2 MByte CHIP-Memory sind möglich), sonst
  114. wird FAST gesetzt.  Falls eines der Argumente  CHIP bzw. FAST angegeben wurde,
  115. wird der Speicher entsprechend diesem eingebunden.  Das Flag 24BITDMA wird ge-
  116. setzt,  wenn sich der Speicher innerhalb des Adressraums des MC68000 befindet,
  117. also unterhalb $1000000,  falls nicht das Argument  !24BITDMA angegeben wurde.
  118. KICK sollte laut  Autodocs nicht beim Einbinden von Speicher verwendet werden,
  119. da das  Betriebssystem das übernimmt.  In diesem Fall jedoch bindet die Reset-
  120. Routine, die durch das Argument RESIDENT installiert wird, den Speicher recht-
  121. zeitig ein, jedoch wird dies vom System nicht erkannt. Deshalb wird bei Angabe
  122. von RESIDENT nicht nur die Reset-Routine (über den CoolCapture,  für die die's
  123. interessiert) installiert,  sondern der Speicher wird auch gleich mit dem KICK
  124. Flag eingebunden.
  125.  
  126. Dieses Programm wurde übrigens komplett in Assembler geschrieben (OMA 2.05).
  127.  
  128. ------------------------------------------------------------------------------
  129.  
  130. Für Fragen oder Anregungen zu diesem Programm bin ich erreichbar:
  131.  
  132. über EMail im Internet unter:
  133.    schlodder@student.uni-tuebingen.de
  134.  
  135. oder einfach per Post:
  136.    Martin Schlodder
  137.    Uhlandstr. 18
  138.    D-72336 Balingen
  139.  
  140. ------------------------------------------------------------------------------
  141.  
  142. Copyright:
  143.  
  144. AddMem ist Freeware,  es darf also frei benutzt und kopiert werden, solange es
  145. nicht verändert wird.
  146.  
  147. DISCLAIMER:
  148.  
  149. Ich kann keine Haftung für  Probleme oder Schäden übernehmen,  die sich direkt
  150. oder indirekt aus der Nutzung dieses Programms ergeben.
  151.  
  152. ------------------------------------------------------------------------------
  153.  
  154. HISTORY:
  155.  
  156. V0.5:   Voll lauffähige Version. Bindet Speicher für OS2.0 als
  157.         PUBLIC|FAST|LOCAL|24BITDMA ein.
  158. V0.6:   Fragt das optionale Argument CheckMem ab, bevor es den Speichertest
  159.         durchführt.
  160. V1.0:   Läuft jetzt auch unter Kickstart 1.3 und früheren, indem bei diesen
  161.         PUBLIC|FAST als Typ eingetragen wird.
  162. V2.0:   Läuft jetzt wieder nur unter OS 2.0 und höher, da es das neue
  163.         Kommandozeilenparsing von DOS ausnutzt. Außerdem kann nun jede Art
  164.         von Speicher angemeldet werden, weil jede beliebige Kombination von
  165.         Speicherflags angegeben werden kann (außer CHIP|FAST).
  166. V2.01:  FPuts durch PutStr ersetzt.
  167. V2.1:   Kennt nun auch das neue OS 3.0 Speicherflag KICK.
  168. V3.0:   Lokalisiert und RESIDENT eingeführt. PUBLIC wird jetzt immer gesetzt,
  169.         FAST und CHIP werden automatisch unterschieden, ebenso 24BITDMA.
  170.         Aufrufsyntax ist nicht mehr kompatibel zu den vorherigen Versionen.
  171. V3.01:  Bug entfernt: Speicher oberhalb $1000000 wurde nicht akzeptiert.
  172.  
  173. ------------------------------------------------------------------------------
  174.  
  175.                                    //
  176.                        Thanks to \X/ Amiga for being the best computer ever !
  177.  
  178.